This invention relates to computer user interface displays and the use of the overscan border to present a user interface beyond the perimeter of a standard user interface display.
There was a time when the most popular operating system for personal computers (DOS) dd not include a graphical user interface. Any company could create a xe2x80x9cmenuxe2x80x9d or xe2x80x9cshellxe2x80x9d which would be the first program launched upon starting the computer and which would present options to the user for launching and managing various applications. Although graphics programming was difficult in the DOS environment, some companies even created graphical user interfaces which could then launch other programs.
Microsoft Corporation of Redmond, Washington, introduced such a graphical user interface for launching applications which it called xe2x80x9cWindowsxe2x80x9d. The first three versions of Windows were merely applications which ran under DOS and could be one of numerous items to be selected from a previously running shell or menu which might be offered by a company other than Microsoft. This continued to allow other companies to offer primary user interface programs to users without the user going through a Microsoft controlled user interface.
However, with the introduction by Microsoft of Windows 95(trademark), the initial loading of the operating system presents a Microsoft developed graphical user interface at the outset which occupies the entire screen display. Microsoft arranged with manufacturers of the standard computer hardware to include this operating system with each computer sold. With Microsoft""s domination of this market, it became impossible for other software vendors to present an interface to users other than as a Microsoft style icon within the Microsoft xe2x80x9cdesktopxe2x80x9d consisting of the entire screen display. This prompted a need for access to a uber interface which could be presented outside of the standard computer screen display and therefore independent of the dictates of Microsoft for items within its xe2x80x9cdesktopxe2x80x9d.
Standard personal computers use VGA or Super VGA or XGA video display systems. These display systems operate in standardized modes such as 640xc3x97480 pixels, 800xc3x97600 pixels, 1024xc3x97768 pixels, and 1280xc3x971024 pixels. When one of these display modes is selected, this is the entire area available for display. In the Microsoft Windows environment, the user instructs the Windows operating system to select one of these standard display modes and the Windows operating system then presents all of the applications and their icons within the selected display area. There is no way to cause the Windows xe2x80x9cdesktopxe2x80x9d to use less than the entire display area and still function as intended and allow another program from another vendor to control the remainder.
The invention is a method for adding a user interface border beyond the standard screen display area. The VGA, SVGA and XGA video systems include a defined border surrounding the display area. The original purpose of this border was to allow adequate time for the horizontal and vertical retrace df the electron gun in a cathode ray tube display. However, as retrace speeds have increased in modern monitors, it is now possible to present a user interface display in this border. The border which can be controlled as a user interface is a portion of what is known as the xe2x80x9coverscanxe2x80x9d. This invention is a method for presenting a user interface in the overscan.
When the electron gun in a CRT retraces to the left of the screen or the top of the screen, it requires a significant amount of time relative to the presentation of a scanned line of data. During the retrace, the electron gun is turned off (xe2x80x9cblankedxe2x80x9d). If the blanking time required for the retrace is equal to the amount of time available, there is no usable overscan. However, modern monitors have become much faster in their retrace speeds, leaving a significant amount of time when the electron gun need not be blanked, allowing a displayable border. In the prior art, although the border is usually xe2x80x9cblackxe2x80x9d (the gun is turned off), it is well-known to specify that the border shall be given any one of six colors. Standard BIOS allows a specification of this color. The desired color is simply specified in one of the registers for the video controller. No data for this color is stored in the buffer of video memory for the display. This invention establishes an additional video buffer for the border and allows his buffer to be written with display data like the regular display buffer. The display area is thereby expanded, on one or more edges, to provide a visible area previously invisible. The pixels within this newly visible area of the display are made accessible to programs though an application programming interface (API) component of this invention. A program incorporating a graphical user interface may be displayed in the previously blanked area of the display, functionally increasing the accessible area of the display without hardware modification.
The invention is a method for displaying an image on a video display system in an overscan area outside of the display area generated by the video display system. The standard display area is defined by two dimensions, each specifying a number of pixels. These dimensions are specified by selecting a video xe2x80x9cmodexe2x80x9d. The method is accomplished by adjusting parameters for the video display system to increase the number of pixels in at least one dimension of the display systeml The number of pixels which is added is less than or equal to the difference between the number of pixels specified in the video mode and a maximum number of pixels which the video display system can effectively display. This difference is the overscan. Because all interface displays are created by writing a desired image to a buffer or memory for the video display, the method requires allocating additional video display memory for the increased pixels. The image written to such memory is then displayed by the system alongside the original display area.
In the preferred embodiment, only the vertical dimension is increased and the overscan user interface is presented below the standard display area. Alternatively, the horizontal dimension may be increased and the overscan user interface displayed to the right of the standard display area. Similarly, the interface image may be displayed on any or all of the four sides of the standard display area.
User input causing movement of a pointer or cursor on the display will move the cursor or pointer to the edge of the display area. The tip of the pointer will stop at the edge most pixel. A transparent window is created which includes the window of the overscan user interface and the adjoining two pixels of the display area. To allow events to be captured in the overscan area, the pointer is displayed off-set from the hotspot such that the hotspot remains within a two pixel-wide area of the standard display on the edge of the display and captured user events which occur while the hotspot is within the two pixel edge of the standard display adjoining the overscan user interface are interpreted as occurring within the overscan area.